from httprunner import HttpRunner, Config, Step, RunRequest, RunTestCase
from common.ConfigReader import Reader
base_path = Reader('config.ini').get_option("dev_base_url")
class TestLogin(HttpRunner):
    config = Config("登录").base_url(base_path).verify(False)

    teststeps = [
        Step(
            RunRequest("登录").
                post("/adminapi/login").
                with_json({'account': 'admin', 'pwd': '123456'}).
                extract().
                with_jmespath("body.data.token", "token").
                validate().
                assert_equal("status_code", 200).
                assert_equal('headers."Content-Type"', "application/json; charset=utf-8").
                assert_equal("body.status", 200).
                assert_equal("body.msg", "success")),
    ]
"""
解耦的作用：减少冗余的代码，让代码可以复用

举例：
用户分组新增、删除、修改，都需要先登录

客服话术新增、修改、删除都需要先登录

登录接口可以单独抽离出来，给到其他的接口去用，让代码可以复用起来，减少多余的代码
"""